Android编程实现WebView自适应全屏方法小结 您所在的位置:网站首页 android 显示网页 Android编程实现WebView自适应全屏方法小结

Android编程实现WebView自适应全屏方法小结

2023-09-22 18:22| 来源: 网络整理| 查看: 265

本文实例讲述了Android编程实现WebView自适应全屏的方法。分享给大家供大家参考,具体如下: 第一种:

settings.setUseWideViewPort(true); settings.setLoadWithOverviewMode(true);

第二种:

WebSetting settings = webView.getSettings(); settings.setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);

把所有内容放在webview等宽的一列中。(可能会出现页面中链接失效)

第三种:

DisplayMetrics metrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(metrics); int mDensity = metrics.densityDpi; if (mDensity == 120) { settings.setDefaultZoom(ZoomDensity.CLOSE); }else if (mDensity == 160) { settings.setDefaultZoom(ZoomDensity.MEDIUM); }else if (mDensity == 240) { settings.setDefaultZoom(ZoomDensity.FAR); }

在我的项目中没办法适用 不过还是找到了方法

代码如下:

webView.setInitialScale(960*100 / MainActivity.screenHeight);

我的网页高度为960 按这个比例拉升 配合

DisplayMetrics metrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(metrics); int mDensity = metrics.densityDpi; if (mDensity == 120) { settings.setDefaultZoom(ZoomDensity.CLOSE); }else if (mDensity == 160) { settings.setDefaultZoom(ZoomDensity.MEDIUM); }else if (mDensity == 240) { settings.setDefaultZoom(ZoomDensity.FAR); }

显示的效果可以接受,一般这样的方式可以解决大多数高度宽度固定的网页显示的问题

在我的项目中,有个公告模块,界面比较小,所以适配是这样做的:

1.文字适配: 注:mContent是webview

mContent.setEnabled(true); mContent.getSettings().setDefaultTextEncodingName("UTF-8"); mContent.getSettings().setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN); mContent.getSettings().setJavaScriptEnabled(true); mContent.getSettings().setSupportZoom(true);

2.图片适配:

mContent.setWebViewClient(new MyWebViewClient()); //设置webview代理加载图片 private class MyWebViewClient extends WebViewClient { @Override public void onPageFinished(WebView view, String url) { super.onPageFinished(view, url); imgReset(); } @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } } //此方法获取里面的img,设置img的高度100%,固定图片不能左右滑动 private void imgReset() { if(mContent!=null){ mContent.loadUrl("javascript:(function(){" + "var objs = document.getElementsByTagName('img'); " + "for(var i=0;i


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有